

#pragma warning(disable : 4996)
//#include<stdio.h>
//int count = 0;
//
//int Fib(int n)
//{
//	if (n <= 2)
//		return 1;
//	else
//		return Fib(n - 1) + Fib(n - 2);
//}
//
//int main()
//{
//	int n;
//	scanf("%d", &n);
//	int ret = Fib(n);
//	printf("%d", ret);
//
//	return 0;
//}
//#include<stdio.h>
//#include<string.h>
//void reverse_string(char* arr)
//{
//	int size=strlen(arr);
//	char temp = *arr;
//	*arr = *(arr + size - 1);
//	*(arr + size - 1) = '\0';
//	if (size > 2)
//		reverse_string(arr + 1);
//	*(arr + size - 1) = temp;
//}
//int main()
//{
//	char arr[100];
//	scanf("%s", arr);
//	reverse_string(arr);
//	printf("%s", arr);
//	return 0;
//}

//#include<stdio.h>
//int fac(int n)
//{
//	if (n >= 2)
//		return n * fac(n - 1);
//	else
//		return n;
//
//}
//int main()
//{
//	int n;
//	scanf("%d", &n);
//	int sum = fac(n);
//	printf("%d", sum);
//	return 0;
//}
//

#include<stdio.h>
int main()
{
	int n;
	int sum = 1;
	scanf("%d", &n);
	for (int i = n; i >0 ; i--)
	{
		sum = sum * i;
	}
	printf("%d", sum);
	return 0;
}